<template>
  <!-- 安卓逆向工具页面外层容器 -->
  <div class="reverse-tools-container">
    <h2>安卓逆向工具</h2> <!-- 页面主标题 -->
    <!-- 遍历工具分组，每组一个大类 -->
    <div class="tool-group" v-for="(group, index) in toolGroups" :key="index">
      <h3>{{ group.name }}</h3> <!-- 分组名称 -->
      <!-- 遍历每组下的工具列表 -->
      <div class="tool-item" v-for="(tool, i) in group.tools" :key="i">
        <h4>{{ tool.name }}</h4> <!-- 工具名称 -->
        <p>{{ tool.description }}</p> <!-- 工具描述 -->
        <div class="link-container">
          <a :href="tool.link" target="_blank">{{ tool.link }}</a> <!-- 工具下载/参考链接 -->
          <button @click="openLink(tool.link)" class="jump-btn">跳转</button> <!-- 跳转按钮，点击新窗口打开链接 -->
        </div>
      </div>
    </div>
  </div>
</template>

<script>
export default {
  methods: {
    // 新窗口打开工具链接
    openLink(url) {
      window.open(url, '_blank') // 使用浏览器新标签页打开链接
    }
  },
  data() {
    return {
      // 工具分组数据，每组包含若干工具
      toolGroups: [
        {
          name: '环境搭建', // 分组名称
          tools: [
            {
              name: '环境搭建', // 工具名称
              description: '基于雷电 9 搭建的逆向环境，内含：\
              安卓逆向环境配置.html; （出处：吾爱破解论坛） 链接： https://www.52pojie.cn/thread-1688786-1-1.html\
              Magisk_v25.2.apk\n\
              Magisk Terminal Emulator_17.7.apk\n\
              app-debug.apk\n\
              LSPosed-manager.apk\n\
              LSPosed-v1.8.4-6609-zygisk-release.zip\
              ', // 工具描述
              link: 'https://pan.quark.cn/s/a47d65cf227e' // 工具下载链接
            },
            {
              name: '真机环境搭建',
              description: '基于谷歌 pixel2 手机搭建的逆向环境，不过因为 pixel2的系统内核版本较旧导致可能出现内核 root 可能会失败，\
              可能会需要自行编译内核，\n\
              我会先尝试 magisk 安装，然后出教程，然后在尝试 Next 和 KerneISU 这两种内核 root 方案，\n\
              先列一下需要的工具：\n\n\
                •  Android 版本： 11\n\
                •   内核版本： 4.4.223-g1bc566a21f60-ab6662096\n\
                •   Magisk 版本：  v23    下载地址： https://github.com/topjohnwu/Magisk/releases/tag/v23.0\n\
                •   TWRP 下载地址： https://twrp.me/Devices/ \n\
              教程： \n\
               • 1. 进入到fastboot模式，命令为adb reboot bootloader ,或者长按开机键+音量减键。验证fastboot是否正常，命令：fastboot devices \n\
               • 2. 下载刷机包，网站为https://developers.google.cn/android/images?hl=zh-cn#taimen。下载之后解压，以管理员身份打开命令行，输入./flash-all.bat。此时开始刷机，等待完成。重新开机即可 \n\
               • 3. 3.打开设置，关于手机->多次点击版本号，进入开发者模式。点击系统->高级->开发者选项->打开USB调试\n\
               • 4. root设备：下载magisk,网站为https://github.com/topjohnwu/Magisk/releases/tag/v29.0。解压taimen目录下唯一的压缩包。找到boot.img，上传到手机上，打开magisk,\n点击安装->修复->选择文件,修复完成之后再当前目录下会生成修复完成的文件。将生成的文件拉回电脑。\n\
               • 5.刷入修复后的img:控制再次进入到fastboot模式。然后将刚才修复过的img刷入，命令为fastboot flash boot ./magisk_patched.img。手动重启：fastboot reboot。\n\
               • 6. 刷入movecert模块，push到手机上\n\
               -- 感谢微信群的大哥们，提供了很多帮助，感谢！本来自己尝试着网上的教程去解锁 BL 然后在刷临时 TWRP 然后在刷永久的 TWRP，再刷入面具 magisk， 但是我在刷入twrp 的时候失败，卡咋fastboot 界面\n\
                 -- 无奈只能从官网下载完整包从新刷入手机系统，使用上面老哥提供的教程',
              link: '/download-tools' // 工具下载链接，跳转到工具下载tab
            }
          ]
        },
        {
          name: '逆向分析工具', // 分组名称
          tools: [
            {
              name: '逆向工具集合', // 工具名称
              description: '工具集合：内含：\n\
              1. IDA Pro-v9.0 RC1-Windows.zip - 强大的反汇编和逆向工程工具，支持多种处理器架构\n\
              2. IDA PRO-macos\n\
                内含：\n\
                • IDA Pro-v9.0 RC1-Macos-X64.app.zip - Mac版IDA Pro(x64架构)\n\
                • IDA Pro-v9.0 RC1-Macos-ARM.app.zip - Mac版IDA Pro(ARM架构)\n\
                • keygen2.zip - 配套注册机\n\
              3. jadx-1.5.1.zip - 强大的Android dex文件反编译工具\n\
              4. ClassyShark.jar - APK分析工具，可查看APK内部结构\n\
              ', // 工具描述
              link: 'https://pan.quark.cn/s/a58b4552c93e' // 工具下载链接
            }
          ]
        }
      ]
    }
  }
}
</script>

<style scoped>
.tool-item p {
  white-space: pre-line; /* 保留换行符，便于多行描述显示 */
  text-align: left; /* 左对齐 */
  margin: 10px 0; /* 上下间距 */
  font-family: monospace; /* 等宽字体，便于技术内容展示 */
  line-height: 1.5; /* 行高 */
}
/* 复用JS逆向工具的样式 */
.link-container {
  display: flex; /* 横向排列链接和按钮 */
  gap: 10px; /* 间距 */
  margin-top: 10px; /* 顶部间距 */
}

.jump-btn {
  padding: 2px 8px; /* 按钮内边距 */
  background: #4285f4; /* 按钮背景色 */
  color: white; /* 字体颜色 */
  border: none; /* 无边框 */
  border-radius: 4px; /* 圆角 */
  cursor: pointer; /* 鼠标悬停为手型 */
}
/* 复用IS逆向工具的样式 */
.reverse-tools-container {
  padding: 10px; /* 外层容器内边距 */
}

.tool-group {
  margin-bottom: 20px; /* 分组间距 */
}

.tool-item {
  padding: 10px; /* 工具项内边距 */
  margin-bottom: 10px; /* 工具项下间距 */
}

@media (min-width: 768px) {
  .reverse-tools-container {
    padding: 20px; /* 大屏时增加内边距 */
  }
  
  .tool-group {
    margin-bottom: 30px; /* 大屏时分组间距更大 */
  }
  
  .tool-item {
    padding: 15px; /* 大屏时工具项内边距更大 */
  }
}
/* border: 1px solid #eee;  // 如需边框可取消注释 */
/* margin-bottom: 10px;  // 如需下间距可取消注释 */
/* border-radius: 4px;  // 如需圆角可取消注释 */
</style>
